home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 / Ham Radio 2000.iso / ham2000 / misc / tasm / misc.zoo / test51.asm < prev    next >
Assembly Source File  |  1991-07-13  |  11KB  |  294 lines

  1. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  2. ; TASM  test file
  3. ; Test all instructions and addressing modes.
  4. ; Processor: 8051
  5. ;
  6.  
  7.  
  8.         .AVSYM
  9.  
  10. labimm:  .EQU    56h
  11. lab2:    .EQU    12h
  12. lab3:    .EQU    1234h
  13. lab5:    .EQU    0feh
  14. labbt_1: .EQU    34h
  15. bit      .equ    81h
  16.  
  17.  
  18.         ACALL lab4    ;11    2   JMP 1
  19. lab4:        
  20.         ADD  A,R0     ;28    1   NOP 1
  21.         ADD  A,R1     ;29    1   NOP 1
  22.         ADD  A,R2     ;2A    1   NOP 1
  23.         ADD  A,R3     ;2B    1   NOP 1
  24.         ADD  A,R4     ;2C    1   NOP 1
  25.         ADD  A,R5     ;2D    1   NOP 1
  26.         ADD  A,R6     ;2E    1   NOP 1
  27.         ADD  A,R7     ;2F    1   NOP 1
  28.         ADD  A,@R0    ;26    1   NOP 1
  29.         ADD  A,@R1    ;27    1   NOP 1
  30.         ADD  A,#labimm   ;24    2   NOP 1
  31.         ADD  A,lab2      ;25    2   NOP 1
  32.         
  33.         ADDC A,R0     ;38    1   NOP 1
  34.         ADDC A,R1     ;39    1   NOP 1
  35.         ADDC A,R2     ;3A    1   NOP 1
  36.         ADDC A,R3     ;3B    1   NOP 1
  37.         ADDC A,R4     ;3C    1   NOP 1
  38.         ADDC A,R5     ;3D    1   NOP 1
  39.         ADDC A,R6     ;3E    1   NOP 1
  40.         ADDC A,R7     ;3F    1   NOP 1
  41.         ADDC A,@R0    ;36    1   NOP 1
  42.         ADDC A,@R1    ;37    1   NOP 1
  43.         ADDC A,#labimm     ;34    2   NOP 1
  44.         ADDC A,lab2      ;35    2   NOP 1
  45.         
  46.         AJMP jlab     ;01    2   JMP 1
  47.         
  48.         ANL  A,R0     ;58    1   NOP 1
  49.         ANL  A,R1     ;59    1   NOP 1
  50.         ANL  A,R2     ;5A    1   NOP 1
  51.         ANL  A,R3     ;5B    1   NOP 1
  52.         ANL  A,R4     ;5C    1   NOP 1
  53.         ANL  A,R5     ;5D    1   NOP 1
  54.         ANL  A,R6     ;5E    1   NOP 1
  55.         ANL  A,R7     ;5F    1   NOP 1
  56.         ANL  A,@R0    ;56    1   NOP 1
  57.         ANL  A,@R1    ;57    1   NOP 1
  58.         ANL  A,#labimm
  59.         ANL  A,lab2
  60.         ANL  C,/bit
  61.         ANL  C,bit
  62.         ANL  lab2,A
  63.         ANL  lab2,#labimm
  64.         
  65.         CJNE A,#labimm,jlab   ;b4    3   CR  1
  66.         CJNE A,lab2,jlab      ;b5    3   CR  1
  67.         CJNE R0,#labimm,jlab  ;b8    3   CR  1
  68.         CJNE R1,#labimm,jlab  ;b9    3   CR  1
  69.         CJNE R2,#labimm,jlab  ;ba    3   CR  1
  70.         CJNE R3,#labimm,jlab  ;bb    3   CR  1
  71.         CJNE R4,#labimm,jlab  ;bc    3   CR  1
  72.         CJNE R5,#labimm,jlab  ;bd    3   CR  1
  73.         CJNE R6,#labimm,jlab  ;be    3   CR  1
  74.         CJNE R7,#labimm,jlab  ;bf    3   CR  1
  75.         CJNE @R0,#labimm,jlab ;b6    3   CR  1
  76.         CJNE @R1,#labimm,jlab ;b7    3   CR  1
  77.         
  78.         CLR  A        ;e4    1   NOP 1
  79.         CLR  C        ;c3    1   NOP 1
  80.         CLR  bit
  81.         
  82.         CPL  A        ;f4    1   NOP 1
  83.         CPL  C        ;b3    1   NOP 1
  84.         CPL  bit
  85.         
  86.         DA   A        ;d4    1   NOP 1
  87.         
  88.         DEC  A        ;14    1   NOP 1
  89.         DEC  R0       ;18    1   NOP 1
  90.         DEC  R1       ;19    1   NOP 1
  91.         DEC  R2       ;1A    1   NOP 1
  92.         DEC  R3       ;1B    1   NOP 1
  93.         DEC  R4       ;1C    1   NOP 1
  94.         DEC  R5       ;1D    1   NOP 1
  95.         DEC  R6       ;1E    1   NOP 1
  96.         DEC  R7       ;1F    1   NOP 1
  97.         DEC  @R0      ;16    1   NOP 1
  98.         DEC  @R1      ;17    1   NOP 1
  99.         DEC  lab2     ;15    2   NOP 1
  100.         
  101.         DIV  AB       ;84    1   NOP 1
  102.         
  103.         DJNZ R0,jlab     ;d8    2   NOP 1
  104.         DJNZ R1,jlab     ;d9    2   NOP 1
  105.         DJNZ R2,jlab     ;dA    2   NOP 1
  106.         DJNZ R3,jlab     ;dB    2   NOP 1
  107.         DJNZ R4,jlab     ;dC    2   NOP 1
  108.         DJNZ R5,jlab     ;dD    2   NOP 1
  109.         DJNZ R6,jlab     ;dE    2   NOP 1
  110.         DJNZ R7,jlab     ;dF    2   NOP 1
  111.         DJNZ lab2,jlab   ;d5    3   CR  1
  112.         
  113.         INC  A        ;04    1   NOP 1
  114.         INC  R0       ;08    1   NOP 1
  115.         INC  R1       ;09    1   NOP 1
  116.         INC  R2       ;0A    1   NOP 1
  117.         INC  R3       ;0B    1   NOP 1
  118.         INC  R4       ;0C    1   NOP 1
  119.         INC  R5       ;0D    1   NOP 1
  120.         INC  R6       ;0E    1   NOP 1
  121.         INC  R7       ;0F    1   NOP 1
  122.         INC  @R0      ;06    1   NOP 1
  123.         INC  @R1      ;07    1   NOP 1
  124.         INC  DPTR     ;a3    1   NOP 1
  125.         INC  lab2     ;05    2   NOP 1
  126.  
  127. jlab:        
  128.         JB   labbt_1,jlab   ;20    3   CR  1
  129.         JBC  labbt_1,jlab   ;10    3   CR  1
  130.         JC   jlab            ;40    2   R1  1
  131.         JMP  @A+DPTR         ;73    1   NOP 1
  132.         JNB  labbt_1,jlab   ;30    3   CR  1
  133.         JNC  jlab            ;50    2   R1  1
  134.         JNZ  jlab            ;70    2   R1  1
  135.         JZ   jlab            ;60    2   R1  1
  136.         
  137.         LCALL lab3       ;12    3   SWAP 1
  138.         
  139.         LJMP lab3        ;02    3   SWAP 1
  140.         
  141.         MOV  A,R0           ;e8    1   NOP 1
  142.         MOV  A,R1           ;e9    1   NOP 1
  143.         MOV  A,R2           ;eA    1   NOP 1
  144.         MOV  A,R3           ;eB    1   NOP 1
  145.         MOV  A,R4           ;eC    1   NOP 1
  146.         MOV  A,R5           ;eD    1   NOP 1
  147.         MOV  A,R6           ;eE    1   NOP 1
  148.         MOV  A,R7           ;eF    1   NOP 1
  149.         MOV  A,@R0          ;e6    1   NOP 1
  150.         MOV  A,@R1          ;e7    1   NOP 1
  151.         MOV  A,#labimm      ;74    2   NOP 1
  152.         MOV  A,lab2         ;e5    2   NOP 1
  153.         MOV  C,bit          ;a2    2   NOP 1
  154.         MOV  DPTR,#labimm   ;90    3   SWAP 1
  155.         MOV  R0,A           ;f8    1   NOP 1
  156.         MOV  R1,A           ;f9    1   NOP 1
  157.         MOV  R2,A           ;fA    1   NOP 1
  158.         MOV  R3,A           ;fB    1   NOP 1
  159.         MOV  R4,A           ;fC    1   NOP 1
  160.         MOV  R5,A           ;fD    1   NOP 1
  161.         MOV  R6,A           ;fE    1   NOP 1
  162.         MOV  R7,A           ;fF    1   NOP 1
  163.         MOV  R0,#labimm     ;78    2   NOP 1
  164.         MOV  R1,#labimm     ;79    2   NOP 1
  165.         MOV  R2,#labimm     ;7A    2   NOP 1
  166.         MOV  R3,#labimm     ;7B    2   NOP 1
  167.         MOV  R4,#labimm     ;7C    2   NOP 1
  168.         MOV  R5,#labimm     ;7D    2   NOP 1
  169.         MOV  R6,#labimm     ;7E    2   NOP 1
  170.         MOV  R7,#labimm     ;7F    2   NOP 1
  171.         MOV  R0,lab2        ;a8    2   NOP 1
  172.         MOV  R1,lab2        ;a9    2   NOP 1
  173.         MOV  R2,lab2        ;aA    2   NOP 1
  174.         MOV  R3,lab2        ;aB    2   NOP 1
  175.         MOV  R4,lab2        ;aC    2   NOP 1
  176.         MOV  R5,lab2        ;aD    2   NOP 1
  177.         MOV  R6,lab2        ;aE    2   NOP 1
  178.         MOV  R7,lab2        ;aF    2   NOP 1
  179.         MOV  @R0,A          ;f6    1   NOP 1
  180.         MOV  @R1,A          ;f7    1   NOP 1
  181.         MOV  @R0,#labimm    ;76    2   NOP 1
  182.         MOV  @R1,#labimm    ;77    2   NOP 1
  183.         MOV  @R0,lab2       ;a6    2   NOP 1
  184.         MOV  @R1,lab2       ;a7    2   NOP 1
  185.         MOV  lab2,A         ;f5    2   NOP 1
  186.         MOV  bit,C          ;92    2   NOP 1
  187.         MOV  lab2,R0        ;88    2   NOP 1
  188.         MOV  lab2,R1        ;89    2   NOP 1
  189.         MOV  lab2,R2        ;8A    2   NOP 1
  190.         MOV  lab2,R3        ;8B    2   NOP 1
  191.         MOV  lab2,R4        ;8C    2   NOP 1
  192.         MOV  lab2,R5        ;8D    2   NOP 1
  193.         MOV  lab2,R6        ;8E    2   NOP 1
  194.         MOV  lab2,R7        ;8F    2   NOP 1
  195.         MOV  lab2,@R0       ;86    2   NOP 1
  196.         MOV  lab2,@R1       ;87    2   NOP 1
  197.         MOV  lab2,#labimm   ;75    3   COMBINE    1
  198.         MOV  lab5,lab2      ;85    3   COMBINE  1
  199.         
  200.         MOVC A,@A+DPTR ;93   1   NOP 1
  201.         MOVC A,@A+PC   ;83    1   NOP 1
  202.         
  203.         MOVX A,@R0    ;e2    1   NOP 1
  204.         MOVX A,@R1    ;e3    1   NOP 1
  205.         MOVX A,@DPTR  ;e0    1   NOP 1
  206.         MOVX @R0,A    ;f2    1   NOP 1
  207.         MOVX @R1,A    ;f3    1   NOP 1
  208.         MOVX @DPTR,A  ;f0    1   NOP 1
  209.         
  210.         MUL  AB       ;a4    1   NOP 1
  211.         
  212.         NOP           ;00    1   NOP 1
  213.         
  214.         ORL  A,R0     ;48    1   NOP 1
  215.         ORL  A,R1     ;49    1   NOP 1
  216.         ORL  A,R2     ;4A    1   NOP 1
  217.         ORL  A,R3     ;4B    1   NOP 1
  218.         ORL  A,R4     ;4C    1   NOP 1
  219.         ORL  A,R5     ;4D    1   NOP 1
  220.         ORL  A,R6     ;4E    1   NOP 1
  221.         ORL  A,R7     ;4F    1   NOP 1
  222.         ORL  A,@R0    ;46    1   NOP 1
  223.         ORL  A,@R1    ;47    1   NOP 1
  224.         ORL  A,#labimm     ;44    2   NOP 1
  225.         ORL  A,lab2      ;45    2   NOP 1
  226.         ORL  C,/bit      ;a0    2   NOP 1
  227.         ORL  C,bit       ;72    2   NOP 1
  228.         ORL  lab2,A      ;42    2   NOP 1
  229.         ORL  lab2,#labimm     ;43    3   COMBINE 1
  230.         
  231.         POP  lab2     ;d0    2   NOP 1
  232.         PUSH lab2     ;c0    2   NOP 1
  233.         
  234.         RET           ;22    1   NOP 1
  235.         RETI          ;32    1   NOP 1
  236.         
  237.         RL   A        ;23    1   NOP 1
  238.         RLC  A        ;33    1   NOP 1
  239.         RR   A        ;03    1   NOP 1
  240.         RRC  A        ;13    1   NOP 1
  241.         
  242. jlab5:
  243.         SETB C        ;d3    1   NOP 1
  244.         SETB bit      ;d2    2   NOP 1
  245.         
  246.         SJMP jlab5    ;80    2   NOP 1
  247.         
  248.         SUBB A,R0     ;98    1   NOP 1
  249.         SUBB A,R1     ;99    1   NOP 1
  250.         SUBB A,R2     ;9A    1   NOP 1
  251.         SUBB A,R3     ;9B    1   NOP 1
  252.         SUBB A,R4     ;9C    1   NOP 1
  253.         SUBB A,R5     ;9D    1   NOP 1
  254.         SUBB A,R6     ;9E    1   NOP 1
  255.         SUBB A,R7     ;9F    1   NOP 1
  256.         SUBB A,@R0    ;96    1   NOP 1
  257.         SUBB A,@R1    ;97    1   NOP 1
  258.         SUBB A,#labimm     ;94    2   NOP 1
  259.         SUBB A,lab2      ;95    2   NOP 1
  260.         
  261.         SWAP A        ;c4    1   NOP 1
  262.         
  263.         XCH  A,R0     ;c8    1   NOP 1
  264.         XCH  A,R1     ;c9    1   NOP 1
  265.         XCH  A,R2     ;cA    1   NOP 1
  266.         XCH  A,R3     ;cB    1   NOP 1
  267.         XCH  A,R4     ;cC    1   NOP 1
  268.         XCH  A,R5     ;cD    1   NOP 1
  269.         XCH  A,R6     ;cE    1   NOP 1
  270.         XCH  A,R7     ;cF    1   NOP 1
  271.         XCH  A,@R0    ;c6    1   NOP 1
  272.         XCH  A,@R1    ;c7    1   NOP 1
  273.         XCH  A,lab2      ;c5    2   NOP 1
  274.         
  275.         XCHD A,@R0    ;d6    1   NOP 1
  276.         XCHD A,@R1    ;d7    1   NOP 1
  277.         
  278.         XRL  A,R0     ;68    1   NOP 1
  279.         XRL  A,R1     ;69    1   NOP 1
  280.         XRL  A,R2     ;6A    1   NOP 1
  281.         XRL  A,R3     ;6B    1   NOP 1
  282.         XRL  A,R4     ;6C    1   NOP 1
  283.         XRL  A,R5     ;6D    1   NOP 1
  284.         XRL  A,R6     ;6E    1   NOP 1
  285.         XRL  A,R7     ;6F    1   NOP 1
  286.         XRL  A,@R0    ;66    1   NOP 1
  287.         XRL  A,@R1    ;67    1   NOP 1
  288.         XRL  A,#labimm     ;64    2   NOP 1
  289.         XRL  A,lab2        ;65    2   NOP 1
  290.         XRL  lab2,A        ;62    2   NOP 1
  291.         XRL  lab2,#labimm  ;63    3   COMBINE 1
  292.  
  293.         .end
  294.